﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace YakShaver.Contract
{


    [ServiceContract]
    public interface IWorkItemService
    {
        /// <summary>
        /// Allows consumer service (YakCapture User Control) to submit work item information
        /// that will be dissimenated by the concrete implementation
        /// </summary>
        /// <param name="pageId">The URL of the page being submitted</param>
        /// <param name="workItemType">Type of work item</param>
        /// <param name="workItemImpactType">Impact this has on current builds</param>
        /// <param name="description">The text the user has submitted to further explain the error/feature/issue</param>
        /// <returns>boolean value of the work item created</returns>
        [OperationContract]
        Guid SubmitWorkItem(IWorkItemDataContract dataContract);
    }

    [Serializable]
    public enum WorkItemType 
    {
        Unknown,
        Issue,
        Feature,
        Task,
    }
    [Serializable]
    public enum WorkItemImpactType 
    {
        Unknown,
        Low,
        Medium,
        High,
    }
}
